package com.linghu.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
/** 评论信息
 * @author linghu
 * @date 2024/4/22 11:43
 */
@TableName("comment")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Comment implements Serializable {


    @TableId(value = "id")
    private Long id;       // 评论ID
    @TableField(value ="content")
    private String content;       // 评论内容
    @TableField(value = "user_id")
    private Long userId;          // 评论作者ID
    @TableField(value = "user_name")
    private String userName;      // 评论作者姓名
    @TableField(value = "create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")//解决时间时区问题
    private Date createTime;      // 创建时间
    @TableField(value = "is_delete")
    private Integer isDelete;     // 是否删除（0：未删除；1：已删除）
    @TableField(value = "blog_id")
    private Long blogId;      // 博客ID
    @TableField(value = "parent_id")
    private Long parentId;    // 父评论ID（被回复的评论）
    @TableField(value = "root_parent_id")
    private Long rootParentId;      // 根评论ID（最顶级的评论）

    private List<Comment> child;    // 本评论下的子评论
}

